1. Field of the Invention
The present invention relates generally to computer system displays, and more specifically to a system and method for graphing functions over user selectable aggregations of input data.
2. Description of the Prior Art
The prior art has long been practiced on paper by mathematicians and more recently in computer graphics user interfaces (GUIs) by software engineers. The prior art graphs a function on a grid of two or three axes commonly labeled X, Y, and Z. One of the axes corresponds to the function output values; the other axis or axes correspond to function data inputs. The axes show relatively simple measurements such as Day of Week vs. Temperature. Point, line or bar displays within the grid display the function values. For instance, the grid could graph average, high, or low temperature functions given sets of temperatures read hourly during specific days. (See FIG. 1.) The prior art also includes multiple function graphs, in which the data axis (such as Day of Week) is subdivided by function. For instance, the Day of the Week axis could display Monday Average, Monday High, Monday Low, Tuesday Average, Tuesday High, Tuesday Low, etc. The graph would display three side-by-side bars for each day. (See FIG. 2.)
The prior art also displays hierarchically organized axes measures. For instance, the Day of the Week axis could display Monday morning, Monday afternoon, and Monday evening. (See FIG. 3.) This is no different from a ruler breaking its measure into inches and further into half inches, quarter inches, etc. The prior art additionally could combine multiple function graphs and hierarchically organized axes to display aggregate function values. For instance, the Day of the Week axis could display Monday, Monday Morning, Monday afternoon, Monday evening, etc. One bar would plot Monday's aggregate temperature over morning, afternoon, and evening; another would plot Monday Morning's temperature, etc. Thus, the reader could see the daily aggregate temperatures as well as the morning, afternoon, and evening temperatures. Another way of showing aggregations is by plotting them as separate functions, using different colors, shading, labeling, etc. to differentiate function values. (See FIG. 4.)
The prior art can also move the functional value axis to the grid. For instance, in a two dimensional graph, the function might be on both X and Y axes data, and the function value is displayed on the grid via a number or a bar scaled independently from the axes scales. Often such a bar is numbered as well. For example, the game Sim City™ displays a grid where the X and Y-axis coordinates are longitude and latitude geographic measures. Various bars on the grid show population statistics at the corresponding X and Y coordinates. The heights of the bars have nothing to do with the X and Y-axes—the bars are on their own scale, displaying population measures. The X and Y-axes are geographic measures in terms of miles. (See FIG. 5.)
The prior art also includes three-dimensional graphs, involving relatively simple X, Y, and Z-axis measures. The graph displays a function of X and Y axes data plotted against the Z-axis. (See FIG. 6.) Alternatively, as in the previous discussion, the function value axis is moved to the grid, displaying a function of data on all three axes. (See FIG. 7.) Such graphs are difficult to read on paper, but software rotation techniques and 3-dimensional perspective displays make this approach viable.
The prior art is practiced on both paper illustrations and GUIs. GUIs provide various navigation capabilities such as scrolling through the axes.